#include <fcntl.h>
#include <unistd.h>
#include <string.h>
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <sys/stat.h>

int main()
{
	//1. 打开管道文件					
	int fd = open("/root/test.pipe",O_RDONLY);
	if(-1 == fd) 
	{
		printf("打开管道文件失败:%m\n");
		unlink("/root/test.pipe");
		exit(-2);
	}
	printf("打开管道文件%m\n");


	//2. 从管道文件中读取数据并输出到终端	
	char buff[256];
	int r;		
	while(1)
	{
		r = read(fd,buff,256);
		if(r>0)
		{
			buff[r] = 0;//添加结束符号  
			printf("来自管道另一头的数据:%s\n",buff);//不然%s要遇到结束符号才会停止打印
		}
	}			


	//3. 关闭管道						
	close(fd);		


	return 0;	
}